#ifndef DTO_H_
#define DTO_H_

#include <MAUtil/String.h>
using namespace MAUtil;

//Goi cuoc
struct GOIItem
{
  public:
    String name;
    String description;
    String keyword;
    String serviceid;
};

class GOIListener
{
	public:
		virtual void itemReceived(GOIItem& item) = 0;
		virtual void processingComplete() = 0;
};

//Lottery Company
struct LCOMItem
{
  public:
    String companyid;
    String companyname;
    String drawdate;
    String smscnt;
    String shortcode;
    String outofdate;
};

class LCOMListener
{
	public:
		virtual void itemReceived(LCOMItem& item) = 0;
		virtual void processingComplete() = 0;
};

//Lottery Result
struct LRESItem
{
  public:
    String companyid;
    String companyname;
    String drawdate;
    String istoday;
    String smscnt;
    String shortcode;
    String result;
    String outofdate;
};

class LRESListener
{
	public:
		virtual void itemReceived(LRESItem& item) = 0;
		virtual void processingComplete() = 0;
};

//Lottery Live Result
struct LINFOItem
{
  public:
    String isnew;
    String isend;
    String result;
    String outofdate;
    String remaintime;
};

class LINFOListener
{
	public:
		virtual void itemReceived(LINFOItem& item) = 0;
		virtual void processingComplete() = 0;
};


//Lottery Soi cau
struct LCAUItem
{
  public:
    String companyid;
    String companyname;
    String ischarging;
    String smscnt;
    String shortcode;
    String olflag;
    String price;
    String result;
    String outofdate;
    String drawdate;
};

class LCAUListener
{
	public:
		virtual void itemReceived(LCAUItem& item) = 0;
		virtual void processingComplete() = 0;
};

//Lottery Random 2 Digits Analysis
struct RANDItem
{
  public:
    String result;
    String isood;
};

class RANDListener
{
	public:
		virtual void itemReceived(RANDItem& item) = 0;
		virtual void processingComplete() = 0;
};

//Lottery 2 Digits Statistics
struct STATItem
{
  public:
    String result;
    String isood;
};

class STATListener
{
	public:
		virtual void itemstatReceived(STATItem& item) = 0;
		virtual void processingstatComplete() = 0;
};

//Lottery GERM
struct GERMItem
{
  public:
    String name;
    String id;
    String digit;
};

class GERMListener
{
	public:
		virtual void itemReceived(GERMItem& item) = 0;
		virtual void processingComplete() = 0;
};

//Lottery GERM BY RESULT
struct GLISTItem
{
  public:
    String name;
    String id;
    String detail;
};

class GLISTListener
{
	public:
		virtual void itemReceived(GLISTItem& item) = 0;
		virtual void processingComplete() = 0;
};

//Lottery GERM BRIDGE DETAIL
struct GINFOItem
{
  public:
    String result;
};

class GINFOListener
{
	public:
		virtual void itemReceived(GINFOItem& item) = 0;
		virtual void processingComplete() = 0;
};

#endif /* DTO_H_ */
